数据结构分类

    线性结构

        数组

            数组的添加、修改、删除、查找

            动态数组

        链表

            动态数据结构

            数据存在“节点”(Node)中

            单向链表

            双向链表

            循环链表

            数组链表

            在链表头、中间、末尾添加元素,链表的遍历和查找,链表修改指定元素,删除链表元素

            虚拟头结点

        栈

            先进后出(LIFO)

            实现方式:

                数组

                链表:操作表头

            入栈、出栈、获取栈顶元素、栈的大小

            案例:括号匹配

        队列

            先进先出(FIFO)

            循环队列

             实现方式:

                数组

                链表:链表头出对,链表尾入队

        哈希表

    树结构

        二叉树

            每个节点最多只有两个子节点,每个节点最多只有一个父节点

            一个节点也是一颗二叉树,空也是一颗二叉树

        二分搜索树

            二分搜索树是二叉树

            每个节点的值,大于其左子树的所有节点的值,小于其右子树的所有节点的值。

            每一颗子树也是二分搜索树。

            前序遍历、中序遍历、后序遍历、层序遍历(广度优先遍历)

        堆

            优先队列

            二叉堆,是一种完全二叉树

            堆中某个节点的值总是不大于其父节点的值(最大堆)

            Sift Up,Sift Down

        线段树(区间树)

            期间染色

            线段树是一种平衡二叉树,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点

        Trie(字典树、前缀树)

        并查集

        AVL

        红黑树

        Treap、Splay、K-D树、哈夫曼树......

    图结构

        邻接矩阵、邻接表

        




专题文章

更多

开源项目

相关文章

更多

最近更新

更多